Augmented/mixed reality virtual venue pipeline optimization

ABSTRACT

Augmented/mixed reality virtual venue pipeline optimization is provided. A method can include acquiring, by a device comprising a processor, information relating to a group of augmented reality applications operating in an area; designating, by the device, an augmented reality application of the group of augmented reality applications as a priority application based on the information relating to the group of augmented reality applications; and granting, by the device, prioritized access to edge network resources in a sub-area comprising at least a portion of the area to the priority application relative to at least one non-priority application of the group of augmented reality applications.

TECHNICAL FIELD

The present disclosure relates to wireless communication systems, and,in particular, to techniques for managing virtual reality, augmentedreality, and/or mixed reality applications over a wireless communicationsystem.

BACKGROUND

Advancements in computing and network technology have resulted in theproliferation of augmented reality (AR) and mixed reality (MR)applications, which can render virtual elements onto real-world scenesto create rich, immersive experiences. AR and MR applications arepresently employed in a wide variety of fields such as entertainment,education, and public works, among others. Such applications cancommunicate with respective elements of a wireless communication networkto provide experiences to users through devices such as smartphones orheadsets. Accordingly, it is desirable to implement techniques toimprove network resource efficiency for these and/or other applications.

DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram of a system that facilitates augmented/mixedreality virtual venue pipeline optimization in accordance with variousaspects described herein.

FIG. 2 is a block diagram of a system that facilitates network resourcemanagement for augmented reality applications in accordance with variousaspects described herein.

FIG. 3 is a block diagram of a system that facilitates point cloudmapping and area provisioning in accordance with various aspectsdescribed herein.

FIGS. 4-5 depict example operating areas for augmented realityapplications that can be provisioned by the system of FIG. 3 inaccordance with various aspects described herein.

FIG. 6 is a block diagram of a system that facilitates direction ofobject rendering for an augmented reality application in accordance withvarious aspects described herein.

FIG. 7 is a block diagram of a system that facilitates managing accessto an augmented reality application based on user credentials inaccordance with various aspects described herein.

FIG. 8 is a block diagram of a system that facilitates allocatingnetwork resources for an augmented reality application based on devicespecifications in accordance with various aspects described herein.

FIG. 9 is a block diagram of another system that facilitates allocatingnetwork resources for an augmented reality application in accordancewith various aspects described herein.

FIG. 10 is a diagram of an example network architecture in which variousembodiments described herein can function.

FIG. 11 is a flow diagram of a method for augmented/mixed realityvirtual venue pipeline optimization in accordance with various aspectsdescribed herein.

FIG. 12 depicts an example computing environment in which variousembodiments described herein can function.

DETAILED DESCRIPTION

Various specific details of the disclosed embodiments are provided inthe description below. One skilled in the art will recognize, however,that the techniques described herein can in some cases be practicedwithout one or more of the specific details, or with other methods,components, materials, etc. In other instances, well-known structures,materials, or operations are not shown or described in detail to avoidobscuring certain aspects.

In an aspect, a method as described herein can include acquiring, by adevice comprising a processor, information relating to a group ofaugmented reality applications operating in an area. The method canfurther include designating, by the device, an augmented realityapplication of the group of augmented reality applications as a priorityapplication based on the information relating to the group of augmentedreality applications. The method can additionally include granting, bythe device, prioritized access to edge network resources in a sub-areacomprising at least a portion of the area to the priority applicationrelative to at least one non-priority application of the group ofaugmented reality applications.

In another aspect, a system as described herein can include a processorand a memory that stores executable instructions that, when executed bythe processor, facilitate performance of operations. The operations caninclude acquiring information relating to a group of augmented realityapplications operating in an area, designating an augmented realityapplication of the group of augmented reality applications as a priorityapplication based on the information relating to the group of augmentedreality applications, and granting prioritized edge network access tothe priority application relative to at least one non-priorityapplication of the group of augmented reality applications in a sub-areacomprising at least a portion of the area.

In a further aspect, a machine-readable storage medium as describedherein can include executable instructions that, when executed by aprocessor, facilitate performance of operations. The operations caninclude obtaining information relating to a group of augmented realityapplications operating within a geographical area, selecting anaugmented reality application of the group of augmented realityapplications based on the information relating to the group of augmentedreality applications, and granting prioritized network resource accessto the selected augmented reality application relative to at least onenon-selected augmented reality application of the group of augmentedreality applications in a section of the geographical area.

Referring first to FIG. 1, a system 100 that facilitates augmented/mixedreality virtual venue pipeline optimization is illustrated. System 100as shown by FIG. 1 includes a network management device 10 that cancommunicate with one or more user equipment devices (UEs) 20. In anaspect, the network management device 10 can be a base station, anaccess point (AP), an Evolved Node B (eNB), and/or another device thatprovides communication service to the UEs 20. Also or alternatively, thenetwork management device 10 can be implemented wholly or in part by oneor more routers or relays, such as an edge router, that direct the flowof communication between one or more UEs 20 in an area and associatednearby network infrastructure. In still another example, the networkmanagement device 10 can be implemented by one or more networkcontrollers and/or other devices that manage communication betweendevices of a wireless communication network. A separate controllerimplemented in this manner can reside on the same communication networkas the UE 20 and corresponding base stations or on a different network(e.g., such that the controller can communicate with respective networkdevices via a separate system). Other implementations of the networkmanagement device 10 are also possible.

Collectively, the network management device 10 and the UE 20 can form atleast a portion of a wireless communication system. While only onenetwork management device 10 and one UE 20 are illustrated in FIG. 1 forsimplicity of illustration, it should be appreciated that a wirelesscommunication network can include any number of UEs and/or other devicessuch as the network management device 10, APs, etc.

The network management device 10 shown in system 100 can include one ormore transceivers 12 that can communicate with (e.g., transmit messagesto and/or receive messages from) the UE 20 and/or other devices insystem 100. The transceiver 12 can include respective antennas and/orany other hardware or software components (e.g., an encoder/decoder,modulator/demodulator, etc.) that can be utilized to process signals fortransmission and/or reception by the network management device 10 and/orassociated network devices such as an AP.

In an aspect, the network management device 10 can further include aprocessor 14 and a memory 16, which can be utilized to facilitatevarious functions of the network management device 10. For instance, thememory 16 can include a non-transitory computer readable storage mediumthat contains computer executable instructions, and the processor 14 canexecute instructions stored by the memory 16. For simplicity ofexplanation, various actions that can be performed via the processor 14and the memory 16 of the network management device 10 are shown anddescribed below with respect to various logical components. In anaspect, the components described herein can be implemented in hardware,software, and/or a combination of hardware and software. For instance, alogical component as described herein can be implemented viainstructions stored on the memory 16 and executed by the processor 14.Other implementations of various logical components could also be used,as will be described in further detail where applicable.

In an aspect, the processor 14 and memory 16 can be utilized to acquireinformation relating to a group of augmented reality (AR) applicationsoperating in an area. As used herein, the term “augmented realityapplication” refers to any application that renders virtual objects ontoa display of a real-world area. Accordingly, the term “augmented realityapplication” as used herein can refer both to traditional ARapplications as well as mixed reality (MR) applications that anchorvirtual objects to particular real-world locations. Additionally,similar concepts to those described herein for AR applications can alsobe used for virtual reality (VR) applications. In a further aspect, theprocessor 14 and memory 16 can utilize this acquired information tomanage network resource usage, e.g., edge network resource usage,associated with the AR applications in the area in various ways as willbe described in further detail below.

By implementing various embodiments as described herein, variousadvantages can be realized that can improve the performance of awireless communication network and/or respective devices in the network.These advantages can include, but are not limited to, the following.Network bandwidth usage efficiency in an area can be increased.Performance of AR applications and/or other applications associated witha communication network (e.g., in terms of power usage, processingcycles used, etc.) can be increased. AR applications and/or otherapplications can be better tailored to the specifications of the userdevices on which the applications are executed. Performance of publicsafety, public utility, and/or other high-priority applications can beimproved even in highly congested areas. Other advantages are alsopossible.

With reference now to FIG. 2, a block diagram of a system 200 thatfacilitates network resource management for augmented realityapplications in accordance with various aspects described herein isillustrated. Repetitive description of like elements employed in otherembodiments described herein is omitted for sake of brevity. System 200as shown in FIG. 2 includes a network management device 10 that canoperate in a similar manner to that described above with respect toFIG. 1. As further shown in FIG. 2, the network management device 10 cancommunicate with one or more AR applications 30, here a group of N ARapplications 30, via one or more communication networks.

In an aspect, the respective AR applications 30 can render virtualobjects onto a real-world background, thereby providing a partiallyvirtualized view, also known as a virtual venue experience (VVE), to auser of a UE 20 and/or other suitable rendering device. To facilitate aVVE, an AR application 30 can exchange data with a virtual venueplatform (VVP), which can be implemented via one or more communicationdevices in a communication network. The timeliness and frequency of thisdata exchange can be variable, e.g., ranging from a one-time exchange atthe launch of the VVE to regular real-time updates during theexperience.

Communications between an AR application 30 and a VVP have latencyassociated with signal travel time and/or other factors, which canresult in perceived delay associated with rendered virtual objects. Thisdelay is commonly known as motion-to-photon latency due to its basis inthe delay between motion of an object and visual perception of saidmotion. It is highly desirable to mitigate motion-to-photon latency(e.g., to no more than 20 ms), as high motion-to-photon latency canresult in diminished user experience. To this end, a VVP can operate onthe UE 20 itself and/or one or more devices of an edge network (edgecloud), which can include cell towers, local resource controllers,and/or other network devices deployed close to the area in which the ARapplication 30 operates for a particular UE 20. This can reduce thelatency of messaging between the AR application 30 and the VVP relativeto communications between an AR application 30 and a centralized networkapparatus.

In an aspect, different AR applications 30 operating in the samephysical environment can utilize common resources, e.g., edge cloudresources associated with the physical area. In some instances, this canresult in conflicts and/or competition between the AR applications 30for edge network resources. To this end, the network management device10 shown in FIG. 2 can allocate resources between respective ARapplications 30 in the area according to a variety of factors asdescribed below.

In an aspect, the network management device 10 as shown in system 200can include a priority designation component 210 that can designate anAR application 30 from among a group of AR applications 30, e.g., agroup of AR applications 30 operating in a geographic area, as apriority application based on acquired information relating to the ARapplications 30. The network management device 10 further includes aresource control component 220 that can grant prioritized access toresources, such as edge network resources, to the priority applicationin at least a portion of the geographic area associated with the groupof AR applications 30 relative to at least one other AR application 30,e.g., a non-priority application of the group of AR applications 30.

Priority designations as performed by the priority designation component210 can be static or dynamic. For instance, a first AR application 30can be designated as a priority application by the priority designationcomponent 210 at a first time, and a second, different AR application 30can be designated as a priority application at a second, different time.Also or alternatively, any number of AR applications 30 can bedesignated as a priority application at a given time, including one ARapplication 30 or multiple AR applications 30. Moreover, an ARapplication 30 can be granted priority with regard to a subset ofnetwork resources. For instance, a first AR application 30 can begranted prioritized access to network bandwidth while a second ARapplication 30 can be granted prioritized access to edge networkcomputing resources and/or other resources.

In an aspect, the resource control component 220 can facilitatemodifications to various operating parameters of an AR application 30 inresponse to the AR application 30 being designated as a priorityapplication. For instance, the resource control component 220 canfacilitate increased registration accuracy, visual quality (e.g., interms of image resolution, color depth, frame rate, etc.), audioquality, directional accuracy, etc., for virtual objects associated witha priority application. Other modifications can also be facilitated bythe resource control component 220.

In another aspect, an AR application 30 associated with the networkmanagement device 10 can be notified of its status as a priorityapplication or a non-priority application, e.g., by the networkmanagement device 10 itself and/or one or more devices associated with acommunication network on which the AR application 30 operates. Also oralternatively, an AR application 30 can be notified of respectiveresource grants and/or restrictions associated with the status of the ARapplication as a priority or non-priority application.

Turning now to FIG. 3, a block diagram of a system 300 that facilitatespoint cloud mapping and area provisioning in accordance with variousaspects described herein is illustrated. Repetitive description of likeelements employed in other embodiments described herein is omitted forsake of brevity. System 300 as shown in FIG. 3 includes a networkmanagement device 10, which in turn can include a mapping component 310that maps a geographical area via a two- or three-dimensional pointcloud and/or via other means. The network management device 10 furtherincludes a point cloud delineation component 320, which can delineateand/or otherwise define a sub-area within the geographical area that isassociated with a priority application, e.g., an AR application 30 asdesignated by the priority designation component 210 in the mannerdescribed above with respect to FIG. 2. Based on the sub-area as definedby the point cloud delineation component 320, the network managementdevice 10 (e.g., via a resource control component 220) can grantprioritized access to edge network resources and/or other resources to apriority application within the sub-area.

In an aspect, AR applications 30 can render virtual objects and/or othersynthetic elements, which can in turn be registered and/or anchored to aphysical location. By way of example, an AR game that involves capturingvirtual monsters can anchor and/or otherwise register virtual monstersto physical locations such as fountains in a park or the like. Thesevirtual elements can be registered via the point cloud associated withthe network management device 10 such that the network, via the networkmanagement device 10, can properly render the virtual elements and/orprovide other aspects of the desired experience associated with the ARapplication 30.

In some embodiments, the point cloud for an area can be a central pointcloud that is maintained by the network management device 10 and/or oneor more other network elements and updated based on information and/orrequests provided by respective AR applications 30 in the area. Also oralternatively, respective AR applications 30 can maintain their ownlocal point clouds based on point cloud information received from thenetwork management device 10. Other implementations are also possible.

In an aspect, situations can arise where respective AR applications 30operating in an area can interfere with each other. For instance,multiple popular AR applications 30 operating in the same area can causenetwork congestion and/or other adverse impacts on communicationperformance in the area. By way of non-limiting example, if two or moreAR applications 30 have virtual objects or other synthetic elementsanchored to the same physical location, this can result in a largeamount of network resource usage in the area that can in some cases behigher than the supported communication capacity of the area.Furthermore, it is highly desirable to enable AR applications associatedwith utilities or public safety, such as an application designed by apower utility for locating underground power lines and/or other objects,to operate with minimal interference from other applications in order toimprove safety and accuracy. For these and/or other reasons, the networkmanagement device 10 can facilitate an allocation of network resources,such as edge network resources, between AR applications 30 operating inan area in a manner that improves the satisfaction and safety of usersof said AR applications 30 in the area.

In another aspect, the network management device 10 can (e.g., via theresource control component 220 and/or the point cloud delineationcomponent 320) grant one or more AR applications 30 exclusive access toedge network resources in a given area. For instance, as shown bydiagram 400 in FIG. 4, two AR applications 30 can operate in respectivesections of an area, respectively denoted as 410 and 420 in diagram 400.As further shown in diagram 400, sections 410 and 420 overlap at asection 430. Subsequently, the AR application 30 corresponding tosection 410 can be given exclusive access to network resources insection 410, which includes the overlap section 430, as shown by diagram500 in FIG. 5. In an aspect, the AR application 30 corresponding tosection 420 can be informed by the network management device 10 of theboundaries of section 410, e.g., as mapped by the point cloud maintainedby the network management device 10. In response to this notification,the AR application 30 corresponding to section 420 can adjust service inany suitable manner. For instance, the application can pause or suspendservice in the overlap section 430, shift operations from overlapsection 430 to a new area, such as section 510 shown in diagram 500,and/or perform other suitable operations.

In an aspect, when the network management device 10 grants exclusivenetwork access to an application in a given area, the network managementdevice 10 can further provide other applications in the area with anexplanation for that access. Those applications can, in turn, performoperations with respect to the area based on the explanation, pass theexplanation on to their users, etc. By way of example, if a publicutility application is granted exclusive network access to an area,other applications can relocate from the area as appropriate and/orprovide an explanation to their users of the reasons for relocatinguntil the associated utility work has completed.

In addition to granting exclusive access to network resources in a givensub-area, the network management device 10 can allocate networkresources among multiple AR applications 30 in an area in other suitablemanners. For instance, a designated priority application can be givenincreased network bandwidth, image resolution, and/or other resourcesrelative to non-priority applications in the area. In one example,restrictions placed in this manner can be based on the ability of an ARapplication 30 to dynamically relocate (e.g., as reported by the ARapplication 30 itself and/or based on usage statistics associated withthe AR application 30). Restrictions can also be placed based onrelative resource usage. For instance, an AR application 30 utilizing adisproportionate amount of network resources in an area relative toother applications can be throttled and/or otherwise adjusted tofacilitate improved access to network resources by other applications inthe area. Other factors could also be considered.

With reference next to FIG. 6, a block diagram of a system 600 thatfacilitates direction of object rendering for an augmented realityapplication in accordance with various aspects described herein isillustrated. Repetitive description of like elements employed in otherembodiments described herein is omitted for sake of brevity. System 600as shown in FIG. 6 includes a network management device 10 that canoperate together with one or more elements of an edge network 40 asdescribed above to provide an AR/MR experience to one or more UEs 20connected to the edge network 40.

In an aspect, an AR application 30 and/or an associated VVE can utilizemultiple techniques for rendering and/or registering synthetic elements.For example, a VVE can support a local rendering mode in which virtualobjects and/or other synthetic elements are rendered locally atparticipating UEs 20 as well as a broadcast rendering mode in which atleast some virtual objects or synthetic elements are rendered at theedge network 40, e.g., via a network rendering engine 42, and broadcastto the participating UEs 20. In other words, in the broadcast renderingmode, a single instance of a virtual element can be rendered by the edgenetwork 40 and subsequently shared and interacted with independently byrespective UEs 20 in the area.

The network management device 10 as shown in system 600 includes arendering mode component 610, which can acquire information relating tothe edge network 40 and/or associated UEs 20 and select an appropriaterendering mode for a VVE provided by the edge network 40 based on thatinformation. For instance, the rendering mode component 610 can acquireinformation relating to an amount of UEs 20 or other devices interactingwith AR applications operating in an area and utilize this informationto select a rendering mode for at least one of the AR applications,e.g., by switching a selected AR application from a local rendering modeto a broadcast rendering mode in response to the amount of devicesinteracting with the selected application being greater than athreshold. Stated another way, the rendering mode component 610 canshift a rendering architecture associated with a given VVE when thenumber of UEs 20 or other devices interacting with a given VVE makes itmore efficient to do so.

In an aspect, the threshold number of users associated with shiftingbetween different rendering modes can be a static threshold or a dynamicthreshold, e.g., based on current network capacity or loading, computingpower associated with respective user devices in the area, and/or othersuitable factors. In general, one or more criteria utilized by therendering mode component 610 can be dynamically set and/or adjusted toaccount for changing bottlenecks and/or other resource restrictionsassociated with the communication system in order to make efficient useof the available resources.

Turning to FIG. 7, a block diagram of a system 700 that facilitatesmanaging access to an augmented reality application based on usercredentials in accordance with various aspects described herein isillustrated. Repetitive description of like elements employed in otherembodiments described herein is omitted for sake of brevity. As shown byFIG. 7, system 700 includes a network management device 10 with a userauthentication component 710, which can acquire credential informationassociated with a user of an AR application 30, e.g., from a UE 20associated with that user, and assign an access priority to the ARapplication 30 based on the credential information.

In an aspect, the user authentication component 710 can be utilized bythe network management device 10 as part of a set of functions thatenable the network management device 10 to gather information about aparticular environment and/or actors in that environment and to use thatinformation to alter network and/or server configurations as desired toimprove an experience for one or more users of an AR application 30.

In another aspect, whether and/or to what extent a particular user isgranted access and/or prioritized access to a given AR application 30can be determined by the user authentication component 710 according toone or more rules. For instance, an AR application 30 could beage-restricted such that the user authentication component 710 grantsaccess to the AR application only to users who are at least a certainage (e.g., 18 years of age, 21 years of age, etc.). As another example,the user authentication component 710 can grant access to an ARapplication 30 designed for public utility maintenance or otherrestricted-access activities only upon verifying a user's authorizationto perform those activities.

In other embodiments, the user authentication component 710 can makeinferences about a particular user with respect to an AR application 30and selectively grant the user access to the AR application 30 based onthose inferences. For example, the user authentication component 710could infer, based on UE trajectory and/or movement information, that auser has a high degree of interest in the AR application 30 based on,e.g., that user's interactions with the AR application 30, the userremaining in an area associated with the AR application 30, etc. Basedon these inferences, the user authentication component 710 can grantthat user increased network resources relative to another user that,e.g., is merely passing through the area.

As a further example, the user authentication component 710 can assignaccess priority to a given UE 20 based on subscription information orother policies. For instance, if an AR application 30 offers a freeservice tier and a paid service tier, a UE 20 associated with the paidservice tier can be granted additional resources relative to a UE 20associated with the free service tier.

In an additional aspect, the user authentication component 710 canconsolidate different types of information to create profiles that canin turn be utilized to perform access priority designations. Forinstance, a profile could include information relating to a particularUE 20, a user associated with the UE 20, an AR application 30 running onthe UE 20, an area in which the UE 20 is located, etc.

With reference next to FIG. 8, a block diagram of a system 800 thatfacilitates allocating network resources for an augmented realityapplication based on device specifications in accordance with variousaspects described herein is illustrated. Repetitive description of likeelements employed in other embodiments described herein is omitted forsake of brevity. System 800 as shown in FIG. 8 includes a networkmanagement device 10 with a resource allocation component 810 thatacquires information relating to computing resources of UEs 20 and/orother devices interacting with an AR application 30 and allocates edgenetwork resources and/or other resources to those devices according totheir computing resources.

In an aspect, a resource allocation for a particular UE 20 can beassigned by the resource allocation component 810 based on thecapabilities of that UE 20. For instance, the resource allocationcomponent can assign parameters such as data transfer rate, imageresolution, frame rate, or the like based on the radio and/or displaycapabilities of the UE 20. In another aspect, the resource allocationcomponent 810 can assign resources to respective UEs 20 based onavailable edge network resources. By way of example, the resourceallocation component 810 can analyze the availability of renderers,compression technology, wireless spectrum, and/or other resourcesassociated with the edge network and adjust various aspects of a VVEassociated with an AR application, such as metadata transmission model,object registration accuracy and/or timeliness, data update frequency,interactivity level, etc., based on that analysis. Other considerationscan also be used.

In another aspect, the resources allocated to a given device and/orapplication can be determined by the resource allocation component 810based on the resources currently available in the network. For instance,as shown by system 900 in FIG. 9, the network management device 10 canfurther include a network monitor component 910 that monitorsavailability of resources associated with an edge network 40 in a givenarea such that the resource allocation component 810 can allocateresources based on their availability. In this manner, the networkmanagement device 10 can be made adaptable to changes in user load,available wireless spectrum, and/or other factors that could potentiallyimpact performance of respective applications in a given area.

Turning now to FIG. 10, a diagram 1000 of an example networkarchitecture in which various embodiments described herein can functionis illustrated. It should be appreciated that the network architectureshown by diagram 1000 is merely one example of a network architecturethat could be employed and that other network architectures arepossible. It should further be appreciated that respective functionalblocks discussed with respect to diagram 1000 could be implemented byany suitable number of devices.

As shown by diagram 1000, a network architecture for AR/MR/VRapplications can be interacted with via one or more UEs 20. A UE 20 asdescribed herein can be any suitable device that facilitates interactionwith one or more applications. For instance, a UE 20 can include, butmay not be limited to, a smartphone, a virtual reality headset, a laptopor desktop computer, etc.

As additionally shown by diagram 1000, respective UEs 20 can interactwith a location infrastructure 1010 to provide information to thenetwork regarding positioning of said UEs 20. This locationinfrastructure 1010 can include, e.g., network transmitters that providetriangulation functionality, cameras, wireless beacons or tags, and/orany other suitable devices.

The UEs 20 and location infrastructure 1010 as shown by diagram 1000 canfurther interact with an edge cloud (edge network) 1020, which provideslow-latency functionality for one or more applications as generallydescribed above. The edge cloud 1020 can include a device control block1022 that can adapt a given application to available network and/ordevice resources (e.g., as described above with respect to the resourceallocation component 810), determine a division of processing betweenthe edge cloud platform and individual devices (e.g., as described abovewith respect to the rendering mode component 610 in the example ofobject rendering), and/or perform other appropriate actions.

The edge cloud 1020 further includes one or more transceivers 1024,which can include Evolved Node Bs (eNBs), remote radio heads (RRHs),baseband units (BBUs), WiFi access points, and/or other devices thatprovide communication functionality between the edge cloud 1020 and theUEs 20.

The edge cloud 1020 shown in diagram 1000 can further include alocation/registration block 1026, which can determine the positions ofrespective UEs 20, e.g., with the aid of a point cloud 1028. Thispositioning can in turn be utilized to facilitate orientation and/orvisual registration of respective synthetic elements associated with agiven AR application.

Based on device information associated with the device control block1022, location data associated with the location/registration block 1026and/or the point cloud 1028, and/or other suitable information, a VVEassociated with a given AR/MR/VR application can be generated via avirtual venue runtime 1030. In an aspect, the virtual venue runtime 1030can operate to provide an at least partially virtualized experiencebased on information provided via the edge cloud 1020 in addition to aset of policies 1032 such as geofencing or the like.

As further shown in diagram 1000, the edge cloud 1020 can interact witha central cloud 1050 via a bridging/platform management system 1040.While the edge cloud 1020 can generally be located near the location ofa given application to facilitate low-latency operation as describedabove, the central cloud 1050 can be a centralized network system thatperforms one or more high level operations with respect to anapplication that are not as time-sensitive as operations associated withthe edge cloud 1020. In an aspect, the bridging/platform managementsystem 1040 can facilitate communication between the edge cloud 1020 andthe central cloud 1050 via the Internet and/or one or more othersuitable communication or computing networks.

The central cloud 1050 shown in diagram 1000 includes a virtual venueoperation design block 1052, which can be utilized to onboard one ormore software platforms used to create a given application (e.g., Unity,Java, etc.) and facilitate interaction between those software platformsand the network environment shown by diagram 1000. The virtual venueoperation design block 1052 can further control various aspects of how agiven application performs, such as an application's area of operation,monetization, user eligibility, or the like.

The central cloud 1050 further includes a privacy/authentication block1054 that can facilitate secure management of user data, e.g., inconnection with user authorization as performed by the virtual venueoperation design block 1052. To these ends, the central cloud 1050 canadditionally include a venue services block 1056 which can handleoperations such as user registration, payment collection, and/or othersuitable operations.

FIG. 11 illustrates a method in accordance with certain aspects of thisdisclosure. While, for purposes of simplicity of explanation, the methodis shown and described as a series of acts, it is to be understood andappreciated that this disclosure is not limited by the order of acts, assome acts may occur in different orders and/or concurrently with otheracts from that shown and described herein. For example, those skilled inthe art will understand and appreciate that methods can alternatively berepresented as a series of interrelated states or events, such as in astate diagram. Moreover, not all illustrated acts may be required toimplement methods in accordance with certain aspects of this disclosure.

With reference to FIG. 11, a flow diagram of a method 1100 foraugmented/mixed reality virtual venue pipeline optimization ispresented. At 1102, a device comprising a processor (e.g., a networkmanagement device 10 comprising a processor 14) can acquire informationrelating to a group of AR applications (e.g., AR applications 30)operating in an area.

At 1104, the device can designate (e.g., by a priority designationcomponent 210 and/or other components implemented by the processor 14)an AR application of the group of AR applications for which informationwas acquired at 1102 as a priority application based on the informationacquired at 1102.

At 1106, the device can grant (e.g., by a resource control component 220and/or other components implemented by the processor 14) prioritizedaccess to edge network resources in a sub-area that includes at least aportion of the area in which the AR applications operate to the priorityapplication designated at 1104 relative to at least one non-priorityapplication of the group of AR applications for which information wasacquired at 1102.

In order to provide additional context for various embodiments describedherein, FIG. 12 and the following discussion are intended to provide abrief, general description of a suitable computing environment 1200 inwhich the various embodiments of the embodiment described herein can beimplemented. While the embodiments have been described above in thegeneral context of computer-executable instructions that can run on oneor more computers, those skilled in the art will recognize that theembodiments can be also implemented in combination with other programmodules and/or as a combination of hardware and software.

Generally, program modules include routines, programs, components, datastructures, etc., that perform particular tasks or implement particularabstract data types. Moreover, those skilled in the art will appreciatethat the inventive methods can be practiced with other computer systemconfigurations, including single-processor or multiprocessor computersystems, minicomputers, mainframe computers, as well as personalcomputers, hand-held computing devices, microprocessor-based orprogrammable consumer electronics, and the like, each of which can beoperatively coupled to one or more associated devices.

The illustrated embodiments of the embodiments herein can be alsopracticed in distributed computing environments where certain tasks areperformed by remote processing devices that are linked through acommunications network. In a distributed computing environment, programmodules can be located in both local and remote memory storage devices.

Computing devices typically include a variety of media, which caninclude computer-readable storage media and/or communications media,which two terms are used herein differently from one another as follows.Computer-readable storage media can be any available storage media thatcan be accessed by the computer and includes both volatile andnonvolatile media, removable and non-removable media. By way of example,and not limitation, computer-readable storage media can be implementedin connection with any method or technology for storage of informationsuch as computer-readable instructions, program modules, structured dataor unstructured data.

Computer-readable storage media can include, but are not limited to,random access memory (RAM), read only memory (ROM), electricallyerasable programmable read only memory (EEPROM), flash memory or othermemory technology, compact disk read only memory (CD-ROM), digitalversatile disk (DVD) or other optical disk storage, magnetic cassettes,magnetic tape, magnetic disk storage or other magnetic storage devicesor other tangible and/or non-transitory media which can be used to storedesired information. In this regard, the terms “tangible” or“non-transitory” herein as applied to storage, memory orcomputer-readable media, are to be understood to exclude onlypropagating transitory signals per se as modifiers and do not relinquishrights to all standard storage, memory or computer-readable media thatare not only propagating transitory signals per se.

Computer-readable storage media can be accessed by one or more local orremote computing devices, e.g., via access requests, queries or otherdata retrieval protocols, for a variety of operations with respect tothe information stored by the medium.

Communications media typically embody computer-readable instructions,data structures, program modules or other structured or unstructureddata in a data signal such as a modulated data signal, e.g., a carrierwave or other transport mechanism, and includes any information deliveryor transport media. The term “modulated data signal” or signals refersto a signal that has one or more of its characteristics set or changedin such a manner as to encode information in one or more signals. By wayof example, and not limitation, communication media include wired media,such as a wired network or direct-wired connection, and wireless mediasuch as acoustic, RF, infrared and other wireless media.

With reference again to FIG. 12, the example environment 1200 forimplementing various embodiments of the aspects described hereinincludes a computer 1202, the computer 1202 including a processing unit1204, a system memory 1206 and a system bus 1208. The system bus 1208couples system components including, but not limited to, the systemmemory 1206 to the processing unit 1204. The processing unit 1204 can beany of various commercially available processors. Dual microprocessorsand other multi-processor architectures can also be employed as theprocessing unit 1204.

The system bus 1208 can be any of several types of bus structure thatcan further interconnect to a memory bus (with or without a memorycontroller), a peripheral bus, and a local bus using any of a variety ofcommercially available bus architectures. The system memory 1206includes ROM 1210 and RAM 1212. A basic input/output system (BIOS) canbe stored in a non-volatile memory such as ROM, erasable programmableread only memory (EPROM), EEPROM, which BIOS contains the basic routinesthat help to transfer information between elements within the computer1202, such as during startup. The RAM 1212 can also include a high-speedRAM such as static RAM for caching data.

The computer 1202 further includes an internal hard disk drive (HDD)1214 (e.g., EIDE, SATA), a magnetic floppy disk drive (FDD) 1216, (e.g.,to read from or write to a removable diskette 1218) and an optical diskdrive 1220, (e.g., reading a CD-ROM disk 1222 or, to read from or writeto other high capacity optical media such as the DVD). While theinternal HDD 1214 is illustrated as located within the computer 1202,the internal HDD 1214 can also be configured for external use in asuitable chassis (not shown). The HDD 1214, magnetic FDD 1216 andoptical disk drive 1220 can be connected to the system bus 1208 by anHDD interface 1224, a magnetic disk drive interface 1226 and an opticaldrive interface 1228, respectively. The interface 1224 for externaldrive implementations includes at least one or both of Universal SerialBus (USB) and Institute of Electrical and Electronics Engineers (IEEE)1394 interface technologies. Other external drive connectiontechnologies are within contemplation of the embodiments describedherein.

The drives and their associated computer-readable storage media providenonvolatile storage of data, data structures, computer-executableinstructions, and so forth. For the computer 1202, the drives andstorage media accommodate the storage of any data in a suitable digitalformat. Although the description of computer-readable storage mediaabove refers to an HDD, a removable magnetic diskette, and a removableoptical media such as a CD or DVD, it should be appreciated by thoseskilled in the art that other types of storage media which are readableby a computer, such as zip drives, magnetic cassettes, flash memorycards, cartridges, and the like, can also be used in the exampleoperating environment, and further, that any such storage media cancontain computer-executable instructions for performing the methodsdescribed herein.

A number of program modules can be stored in the drives and RAM 1212,including an operating system 1230, one or more application programs1232, other program modules 1234 and program data 1236. All or portionsof the operating system, applications, modules, and/or data can also becached in the RAM 1212. The systems and methods described herein can beimplemented utilizing various commercially available operating systemsor combinations of operating systems.

A user can enter commands and information into the computer 1202 throughone or more wired/wireless input devices, e.g., a keyboard 1238 and apointing device, such as a mouse 1240. Other input devices (not shown)can include a microphone, an infrared (IR) remote control, a joystick, agame pad, a stylus pen, touch screen or the like. These and other inputdevices are often connected to the processing unit 1204 through an inputdevice interface 1242 that can be coupled to the system bus 1208, butcan be connected by other interfaces, such as a parallel port, an IEEE1394 serial port, a game port, a USB port, an IR interface, etc.

A monitor 1244 or other type of display device can be also connected tothe system bus 1208 via an interface, such as a video adapter 1246. Inaddition to the monitor 1244, a computer typically includes otherperipheral output devices (not shown), such as speakers, printers, etc.

The computer 1202 can operate in a networked environment using logicalconnections via wired and/or wireless communications to one or moreremote computers, such as a remote computer(s) 1248. The remotecomputer(s) 1248 can be a workstation, a server computer, a router, apersonal computer, portable computer, microprocessor-based entertainmentappliance, a peer device or other common network node, and typicallyincludes many or all of the elements described relative to the computer1202, although, for purposes of brevity, only a memory/storage device1250 is illustrated. The logical connections depicted includewired/wireless connectivity to a local area network (LAN) 1252 and/orlarger networks, e.g., a wide area network (WAN) 1254. Such LAN and WANnetworking environments are commonplace in offices and companies, andfacilitate enterprise-wide computer networks, such as intranets, all ofwhich can connect to a global communications network, e.g., theInternet.

When used in a LAN networking environment, the computer 1202 can beconnected to the local network 1252 through a wired and/or wirelesscommunication network interface or adapter 1256. The adapter 1256 canfacilitate wired or wireless communication to the LAN 1252, which canalso include a wireless access point (AP) disposed thereon forcommunicating with the wireless adapter 1256.

When used in a WAN networking environment, the computer 1202 can includea modem 1258 or can be connected to a communications server on the WAN1254 or has other means for establishing communications over the WAN1254, such as by way of the Internet. The modem 1258, which can beinternal or external and a wired or wireless device, can be connected tothe system bus 1208 via the input device interface 1242. In a networkedenvironment, program modules depicted relative to the computer 1202 orportions thereof, can be stored in the remote memory/storage device1250. It will be appreciated that the network connections shown areexample and other means of establishing a communications link betweenthe computers can be used.

The computer 1202 can be operable to communicate with any wirelessdevices or entities operatively disposed in wireless communication,e.g., a printer, scanner, desktop and/or portable computer, portabledata assistant, communications satellite, any piece of equipment orlocation associated with a wirelessly detectable tag (e.g., a kiosk,news stand, restroom), and telephone. This can include Wireless Fidelity(Wi-Fi) and BLUETOOTH® wireless technologies. Thus, the communicationcan be a predefined structure as with a conventional network or simplyan ad hoc communication between at least two devices.

Wi-Fi can allow connection to the Internet from a couch at home, a bedin a hotel room or a conference room at work, without wires. Wi-Fi is awireless technology similar to that used in a cell phone that enablessuch devices, e.g., computers, to send and receive data indoors and out;anywhere within the range of a base station. Wi-Fi networks use radiotechnologies called IEEE 802.11 (a, b, g, n, ac, etc.) to providesecure, reliable, fast wireless connectivity. A Wi-Fi network can beused to connect computers to each other, to the Internet, and to wirednetworks (which can use IEEE 802.3 or Ethernet). Wi-Fi networks operatein the unlicensed 2.4 and 5 GHz radio bands, at an 11 Mbps (802.11a) or54 Mbps (802.11b) data rate, for example or with products that containboth bands (dual band), so the networks can provide real-worldperformance similar to the basic 10BaseT wired Ethernet networks used inmany offices.

The above description includes non-limiting examples of the variousembodiments. It is, of course, not possible to describe everyconceivable combination of components or methodologies for purposes ofdescribing the disclosed subject matter, and one skilled in the art mayrecognize that further combinations and permutations of the variousembodiments are possible. The disclosed subject matter is intended toembrace all such alterations, modifications, and variations that fallwithin the spirit and scope of the appended claims.

With regard to the various functions performed by the above describedcomponents, devices, circuits, systems, etc., the terms (including areference to a “means”) used to describe such components are intended toalso include, unless otherwise indicated, any structure(s) whichperforms the specified function of the described component (e.g., afunctional equivalent), even if not structurally equivalent to thedisclosed structure. In addition, while a particular feature of thedisclosed subject matter may have been disclosed with respect to onlyone of several implementations, such feature may be combined with one ormore other features of the other implementations as may be desired andadvantageous for any given or particular application.

The terms “exemplary” and/or “demonstrative” as used herein are intendedto mean serving as an example, instance, or illustration. For theavoidance of doubt, the subject matter disclosed herein is not limitedby such examples. In addition, any aspect or design described herein as“exemplary” and/or “demonstrative” is not necessarily to be construed aspreferred or advantageous over other aspects or designs, nor is it meantto preclude equivalent structures and techniques known to one skilled inthe art. Furthermore, to the extent that the terms “includes,” “has,”“contains,” and other similar words are used in either the detaileddescription or the claims, such terms are intended to be inclusive—in amanner similar to the term “comprising” as an open transitionword—without precluding any additional or other elements.

The term “or” as used herein is intended to mean an inclusive “or”rather than an exclusive “or.” For example, the phrase “A or B” isintended to include instances of A, B, and both A and B. Additionally,the articles “a” and “an” as used in this application and the appendedclaims should generally be construed to mean “one or more” unless eitherotherwise specified or clear from the context to be directed to asingular form.

The term “set” as employed herein excludes the empty set, i.e., the setwith no elements therein. Thus, a “set” in the subject disclosureincludes one or more elements or entities. Likewise, the term “group” asutilized herein refers to a collection of one or more entities.

The terms “first,” “second,” “third,” and so forth, as used in theclaims, unless otherwise clear by context, is for clarity only anddoesn't otherwise indicate or imply any order in time. For instance, “afirst determination,” “a second determination,” and “a thirddetermination,” does not indicate or imply that the first determinationis to be made before the second determination, or vice versa, etc.

The description of illustrated embodiments of the subject disclosure asprovided herein, including what is described in the Abstract, is notintended to be exhaustive or to limit the disclosed embodiments to theprecise forms disclosed. While specific embodiments and examples aredescribed herein for illustrative purposes, various modifications arepossible that are considered within the scope of such embodiments andexamples, as one skilled in the art can recognize. In this regard, whilethe subject matter has been described herein in connection with variousembodiments and corresponding drawings, where applicable, it is to beunderstood that other similar embodiments can be used or modificationsand additions can be made to the described embodiments for performingthe same, similar, alternative, or substitute function of the disclosedsubject matter without deviating therefrom. Therefore, the disclosedsubject matter should not be limited to any single embodiment describedherein, but rather should be construed in breadth and scope inaccordance with the appended claims below.

What is claimed is:
 1. A method, comprising: acquiring, by a devicecomprising a processor, information relating to a group of augmentedreality applications operating in an area, the group of augmentedreality applications utilizing common edge network resources that areshared by respective applications of the group of augmented realityapplications; designating, by the device, an augmented realityapplication of the group of augmented reality applications as a priorityapplication in a sub-area comprising at least a portion of the areabased on the information relating to the group of augmented realityapplications; and granting, by the device, a first amount of the commonedge network resources in the sub-area to the priority application,wherein the first amount of the common edge network resources is greaterthan a second amount of the common edge network resources granted to atleast one non-priority application of the group of augmented realityapplications within the sub-area.
 2. The method of claim 1, furthercomprising: mapping, by the device, the area via a point cloud; anddelineating, by the device, the sub-area in the point cloud, wherein thegranting comprises granting the first amount of the common edge networkresources to the priority application within the sub-area based on thepoint cloud.
 3. The method of claim 2, wherein the granting comprisesgranting the priority application exclusive access to the common edgenetwork resources within the sub-area, and wherein the method furthercomprises: notifying, by the device, the at least one non-priorityapplication of respective boundaries of the sub-area as mapped by thepoint cloud.
 4. The method of claim 2, further comprising: notifying, bythe device, the at least one non-priority application of a resourcerestriction associated with the sub-area as a result of the granting. 5.The method of claim 1, wherein the acquiring comprises acquiringinformation relating to an amount of devices interacting with the groupof augmented reality applications operating in the area.
 6. The methodof claim 5, further comprising: switching, by the device, a selectedaugmented reality application of the group of augmented realityapplications from a local rendering mode to a broadcast rendering modein response to the amount of devices interacting with the selectedaugmented reality application being greater than a threshold.
 7. Themethod of claim 1, wherein the acquiring comprises acquiring credentialinformation associated with a user of the group of augmented realityapplications operating in the area, and wherein the method furthercomprises: granting, by the device, the user prioritized access to atleast one augmented reality application of the group of augmentedreality applications operating in the area based on the credentialinformation.
 8. The method of claim 1, wherein the granting comprisesincreasing a registration accuracy for virtual objects associated withthe priority application in the area.
 9. The method of claim 1, furthercomprising: monitoring availability of the common edge network resourcesin the area, wherein the granting comprises determining the first amountof the common edge network resources and the second amount of the commonedge network resources according to the availability of the common edgenetwork resources in the area.
 10. A system, comprising: a processor;and a memory that stores executable instructions that, when executed bythe processor, facilitate performance of operations, the operationscomprising: acquiring information relating to a group of augmentedreality applications operating in an area and utilizing common edgenetwork resources associated with the area; designating an augmentedreality application of the group of augmented reality applications as apriority application in a sub-area comprising at least a portion of thearea based on the information relating to the group of augmented realityapplications; and prioritizing availability of the common edge networkresources for the priority application over that of at least onenon-priority application of the group of augmented reality applicationswithin the sub-area.
 11. The system of claim 10, wherein the operationsfurther comprise: mapping the area using a point cloud; and allocatingthe sub-area in the point cloud for the priority application; whereinthe prioritizing comprises prioritizing the availability of the commonedge network resources for the priority application within the sub-areabased on the point cloud.
 12. The system of claim 11, wherein: theprioritizing comprises granting the priority application exclusiveaccess to the common edge network resources within the sub-area; and theoperations further comprise notifying the at least one non-priorityapplication of respective boundaries of the sub-area as mapped by thepoint cloud.
 13. The system of claim 10, wherein the operations furthercomprise: acquiring information relating to an amount of devicesinteracting with the group of augmented reality applications operatingin the area.
 14. The system of claim 13, wherein the operations furthercomprise: switching a selected augmented reality application of thegroup of augmented reality applications from a local rendering mode to abroadcast rendering mode in response to the amount of devicesinteracting with the selected augmented reality application beinggreater than a threshold.
 15. The system of claim 10, wherein theoperations further comprise: receiving credentials associated with auser of the group of augmented reality applications operating in thearea; and granting the user prioritized access to at least one augmentedreality application of the group of augmented reality applicationsoperating in the area based on the credentials.
 16. A non-transitorymachine-readable medium, comprising executable instructions that, whenexecuted by a processor, facilitate performance of operations,comprising: obtaining information relating to a group of augmentedreality applications operating within a geographical area and utilizingcommon edge cloud resources associated with the geographical area;selecting an augmented reality application of the group of augmentedreality applications based on the information relating to the group ofaugmented reality applications, resulting in a selected augmentedreality application; and granting a first amount of the common edgecloud resources to the selected augmented reality application within asection of the geographical area, wherein the first amount of the commonedge cloud resources is greater than a second amount of the common edgecloud resources granted to at least one non-selected augmented realityapplication of the group of augmented reality applications within thesection of the geographical area.
 17. The non-transitorymachine-readable medium of claim 16, wherein the operations furthercomprise: generating a point cloud for the geographical area; allocatingthe section of the geographical area in the point cloud for the selectedaugmented reality application; and granting the first amount of thecommon edge cloud resources to the selected augmented realityapplication within the section of the geographical area based on thepoint cloud.
 18. The non-transitory machine-readable medium of claim 17,wherein the operations further comprise: granting the selected augmentedreality application exclusive access to the common edge cloud resourceswithin the section of the geographical area; and notifying the at leastone non-selected augmented reality application of respective boundariesof the section of the geographical area according to the point cloud.19. The non-transitory machine-readable medium of claim 16, wherein theoperations further comprise: acquiring credentials for a userinteracting with an augmented reality application of the group ofaugmented reality applications; and granting the user prioritized accessto the common edge cloud resources for the augmented reality applicationof the group of augmented reality applications based on the credentials.20. The method of claim 1, wherein the common edge network resourcescomprise at least one resource selected from a group comprising edgenetwork bandwidth and edge network computing resources.